//初始化
var myChart = echarts.init(document.getElementById('main'));
var cityData = []; // 创建市 json
var cityGroup = new Object();
$.ajax({
	type : "post",
	url : "/backjson/getJson?method=2",
	dataType : "json",
	success : function(data) {
		$.each(data, function(index) {
			// 第一步：先将经纬度坐标转化成城市：省+市（地级城市）
			// 调用百度地图API方法
			var map = new BMap.Map("allmap");
			var point = new BMap.Point(data[index].x, data[index].y);
			var gc = new BMap.Geocoder();
			gc.getLocation(point, function(rs) {
				// 获得返回json数据格式：省：province 市：city 县/区：district 镇/街道：street
				// 村/街道号streetNumber
				var addComp = rs.addressComponents;
				var city = addComp.district;
				// 将省、市分别加入json
				cityData.push({
					name : city,
					value : 1
				});
				var position = [ data[index].x, data[index].y ];
				cityGroup[addComp.district] = position;
			});
		});
	}
});
setTimeout(function() {
	var data = cityData;
	var geoCoordMap = cityGroup;
	/*
	 * var data = [{name:"昆山市",value:1}]; var geoCoordMap =
	 * {"昆山市":[120.885468,31.331701]}; console.log(geoCoordMap);
	 * console.log(cityGroup);
	 */

	var convertData = function(data) {
		var res = [];
		for (var i = 0; i < data.length; i++) {
			var geoCoord = geoCoordMap[data[i].name];
			if (geoCoord) {
				res.push({
					name : data[i].name,
					value : geoCoord.concat(data[i].value)
				});
			}
		}
		return res;
	};
	var option = {
		backgroundColor : '#404a59',
		title : {
			text : '全国机器人销售情况',
			subtext : '数据来源',
			sublink : '#',
			left : 'center',
			textStyle : {
				color : '#fff'
			}
		},
		tooltip : {
			trigger : 'item'
		},
		legend : {
			orient : 'vertical',
			y : 'top',
			x : 'left',
			data : [ '机器人' ],
			textStyle : {
				color : '#fff'
			}
		},
		geo : {
			map : 'china',
			label : {
				normal : {
					show : false,

				},
				emphasis : {
					show : false
				}

			},
			roam : true,
			itemStyle : {
				normal : {
					areaColor : '#323c48',
					borderColor : '#111'

				},
				emphasis : {
					areaColor : '#2a333d',
				}
			}
		},
		series : [ {
			name : '机器人',
			type : 'scatter',
			coordinateSystem : 'geo',
			data : convertData(data),
			symbolSize : function(val) {
				return val[2] * 10;
			},
			label : {
				normal : {
					formatter : '{b}',
					position : 'right',
					show : false
				},
				emphasis : {
					show : true
				}
			},
			itemStyle : {
				normal : {
					color : '#ddb926'
				}
			}
		}, {
			name : 'Top 5',
			type : 'effectScatter',
			coordinateSystem : 'geo',
			data : convertData(data.sort(function(a, b) {
				return b.value - a.value;
			}).slice(0, 6)),
			symbolSize : function(val) {
				return val[2] * 10;
			},
			showEffectOn : 'render',
			rippleEffect : {
				brushType : 'stroke'
			},
			hoverAnimation : true,
			label : {
				normal : {
					formatter : '{b}',
					position : 'right',
					show : true
				}
			},
			itemStyle : {
				normal : {
					color : '#f4e925',
					shadowBlur : 1,
					shadowColor : '#333'
				}
			},
			zlevel : 1
		} ]
	};
	myChart.setOption(option);
}, 1000);
